package com.mhc.suzuki.bo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

/**
 * @author Churry
 * @create 2017-09-14 15:22
 **/
@Data
public class AuditTaskBO {

    /**
     * 自增主键，订单ID
     * pcl_order.order_id
     */
    private Long orderId;

    /**
     * 订单编号:产品代码+时间+4位随机数
     * <p>
     * pcl_order.order_no
     */
    private String orderNo;

    /**
     * 公司编号
     * pcl_order.company_no
     */
    private String companyNo;

    /**
     * 客户编号
     * pcl_order.customer_id
     */
    private Long customerId;

    /**
     * 身份证号码
     * <p>
     * pcl_order.customer_id_card
     */
    private String customerIdCard;

    /**
     * 冗余字段，客户姓名
     * <p>
     * pcl_order.customer_name
     */
    private String customerName;

    /**
     * 共同购车人身份证号码
     */
    private String commonCustomerIdCard;

    /**
     * 客户共同购车人姓名
     */
    private String commonCustomerName;

    /**
     * 业务员员工ID
     * <p>
     * pcl_order.staff_id
     */
    private Long staffId;

    /**
     * 冗余字段，业务员名称
     * pcl_order.staff_name
     */
    private String staffName;

    /**
     * 申请部门ID
     * pcl_order.dept_id
     */
    private Long deptId;

    /**
     * 部门名称
     * pcl_order.dept_name
     */
    private String deptName;

    /**
     * 经销商ID
     * <p>
     * pcl_order.dealer_id
     */
    private String dealerId;

    /**
     * 经销商名称
     * <p>
     * pcl_order.dealer_name
     */
    private String dealerName;

    /**
     * 业务来源类型
     * <p>
     * pcl_order.biz_channel
     */
    private Integer bizChannel;

    /**
     * 贷款银行ID，对应数据字典中数据ID
     * pcl_order.loan_bank_id
     */
    private Long loanBankId;

    /**
     * 冗余字段，贷款银行名称
     * pcl_order.loan_bank_name
     */
    private String loanBankName;

    /**
     * 贷款额度
     * <p>
     * pcl_loan_info.loan_amount
     */
    private java.math.BigDecimal loanAmount;

    /**
     * 订单状态
     * pcl_order.order_status
     */
    private Integer orderStatus;

    /**
     * 终端类型，如pc端、移动web、小程序、钉钉等
     * pcl_order.terminal_type
     */
    private String terminalType;

    /**
     * 附件批次编号：前3位表示附件分组（如订单、购车人、车辆等）+下划线+日期+4位随机数
     * pcl_order.annex_batch_no
     */
    private String annexBatchNo;

    /**
     * 申请时间
     * pcl_order.gmt_create
     */
    @SuppressWarnings("squid:S3437")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDateTime gmtCreate;

    /**
     * pcl_order.gmt_modified
     */
    @SuppressWarnings("squid:S3437")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDateTime gmtModified;

    /**
     * pcl_order_customer_rel.customer_type
     */
    private String customerType;
    /**
     * 品牌车型
     * pcl_car_info.car_model
     */
    private String carModel;

    /**
     * 车牌号码
     * pcl_notary_mortgage.license_plate_no
     */
    private String licensePlateNo;

    private String mobilePhone;    //手机号码
    private String remark;    //申请备注

    /**
     * 待办任务ID
     * pcl_waiting_task_staff.task_id
     */
    private Long taskId;

    /**
     * 业务申请编号
     * pcl_order_audit_task.apply_id
     */
    private Long applyId;

    /**
     * 申请类型
     * pcl_order_audit_task.apply_type
     */
    private Integer applyType;

    /**
     * 申请业务类型描述
     * pcl_order_audit_apply.apply_type
     */
    private String applyTypeDesc;

    /**
     * 是否需要GPS：0 不需要， 1需要
     * pcl_car_info.need_gps
     */
    private Boolean needGps;

    /**
     * GPS编号
     * pcl_car_info.gps_num
     */
    private String gpsNum;

    /**
     * gps安装位置
     * pcl_car_info.gps_set_location
     */
    private String gpsSetLocation;

    /**
     * GPS厂商
     * pcl_car_info.gps_factory
     */
    private String gpsFactory;

    /**
     * 工作流中的节点ID
     * pcl_order_audit_task.flow_node_id
     */
    private String flowNodeId;

}
